package com.javacrafting.mifos.domain;

public class LoanScheduleImpl implements LoanSchedule
{
	private Integer		id;
	private Double		principal;
	private Double		interest;
	private Double		penalty;
	private Short		paymentStatus;
	private Short		installmentId;
	private Integer		versionNumber;

	private Customer	customer;
	private LoanAccount	loanAccount;

	public LoanScheduleImpl()
	{
		// default constructor for hibernate
	}

	public LoanScheduleImpl(final Customer customer, final LoanAccount loanAccount, final Double principal, final Double interest, final Double penalty, final Short paymentStatus,
			final Short installmentId, final Integer versionNumber)
	{
		this.customer = customer;
		this.loanAccount = loanAccount;
		this.principal = principal;
		this.interest = interest;
		this.penalty = penalty;
		this.paymentStatus = paymentStatus;
		this.installmentId = installmentId;
		this.versionNumber = versionNumber;
	}

	public Integer getId()
	{
		return id;
	}

	public void setId(Integer id)
	{
		this.id = id;
	}

	public Double getPrincipal()
	{
		return principal;
	}

	public void setPrincipal(Double principal)
	{
		this.principal = principal;
	}

	public Double getInterest()
	{
		return interest;
	}

	public void setInterest(Double interest)
	{
		this.interest = interest;
	}

	public Short getPaymentStatus()
	{
		return paymentStatus;
	}

	public void setPaymentStatus(Short paymentStatus)
	{
		this.paymentStatus = paymentStatus;
	}

	public Short getInstallmentId()
	{
		return installmentId;
	}

	public void setInstallmentId(Short installmentId)
	{
		this.installmentId = installmentId;
	}

	public Integer getVersionNumber()
	{
		return versionNumber;
	}

	public void setVersionNumber(Integer versionNumber)
	{
		this.versionNumber = versionNumber;
	}

	public Customer getCustomer()
	{
		return customer;
	}

	public void setCustomer(Customer customer)
	{
		this.customer = customer;
	}

	public LoanAccount getLoanAccount()
	{
		return loanAccount;
	}

	public void setLoanAccount(LoanAccount loanAccount)
	{
		this.loanAccount = loanAccount;
	}

	public Double getPenalty()
	{
		return penalty;
	}

	public void setPenalty(Double penalty)
	{
		this.penalty = penalty;
	}
}
